40cd4f58d756a66bc8bee46a6e9f04bd4bc0282f,AngularJS/src/org/angularjs/index/AngularJSIndexingHandler.java,AngularJSIndexingHandler,processCallExpression,#JSCallExpression#JSSymbolVisitor#,33
Before Change
JSExpression argument = arguments[0];
if (argument instanceof JSLiteralExpression && ((JSLiteralExpression)argument).isQuotedLiteral()) {
final String attributeName = getAttributeName(argument.getText());
visitor.storeAdditionalData(argument, AngularDirectivesIndex.INDEX_ID.toString(), attributeName, argument.getTextOffset());
visitor.storeAdditionalData(argument, AngularSymbolIndex.INDEX_ID.toString(), attributeName, argument.getTextOffset());
}
}
After Change
final String command = callee.getReferencedName();
final ID<String, Void> index = INDEXERS.get(command);
if (index != null) {
JSExpression[] arguments = callExpression.getArguments();
if (arguments.length > 0) {
JSExpression argument = arguments[0];
if (argument instanceof JSLiteralExpression && ((JSLiteralExpression)argument).isQuotedLiteral()) {
final Function<String, String> converter = NAME_CONVERTERS.get(command);
final String defaultName = StringUtil.unquoteString(argument.getText());
final String name = converter != null ? converter.fun(argument.getText()) : defaultName;
visitor.storeAdditionalData(argument, index.toString(), name, argument.getTextOffset());
visitor.storeAdditionalData(argument, AngularSymbolIndex.INDEX_ID.toString(), name, argument.getTextOffset());
if (!StringUtil.equals(defaultName, name)) {
visitor.storeAdditionalData(argument, AngularSymbolIndex.INDEX_ID.toString(), defaultName, argument.getTextOffset());